package com.lebang.feign.draw;

import com.lebang.feign.draw.fallback.DrawClickFallback;
import com.lebang.model.RequestUserInfo;
import com.lebangweb.response.JsonData;
import io.swagger.annotations.ApiOperation;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;

/**
 * @author xwj
 */
@FeignClient(name = "wangzhuan-draw", contextId = "wangzhuan-draw-click", fallback = DrawClickFallback.class)
public interface DrawClickFeign {

    /**
     * 签到信息--app
     *
     * @return 返回结果
     */
    @ApiOperation("签到信息")
    @PostMapping("/draw/drawclickrecord/info")
    JsonData info(@RequestBody RequestUserInfo requestUserInfo, @RequestParam(value = "isNewMember", required = false) Integer isNewMember);


    /**
     * 签到--app
     *
     * @return 返回结果
     */
    @ApiOperation("签到")
    @PostMapping("/draw/drawclickrecord/click")
    JsonData click(@RequestBody RequestUserInfo requestUserInfo, @RequestParam(value = "recordId", required = false) Integer recordId);

    /**
     * 每日签到状态--app
     *
     * @return 返回结果
     */
    @ApiOperation("每日签到状态")
    @PostMapping("/draw/drawclickrecord/status")
    JsonData status(@RequestBody RequestUserInfo requestUserInfo);

    /**
     * 每日喵一下签到状态--app
     *
     * @return 返回结果
     */
    @ApiOperation("每日喵一下签到状态")
    @PostMapping("/draw/drawclickrecord/drawstatus")
    JsonData drawStatus(@RequestBody RequestUserInfo requestUserInfo);

    /**
     * 每日喵一下领奖--app
     *
     * @return 返回结果
     */
    @ApiOperation("每日喵一下领奖")
    @PostMapping("/draw/drawclickrecord/reward")
    JsonData reward(@RequestBody RequestUserInfo requestUserInfo);
}
